home *** CD-ROM | disk | FTP | other *** search
/ Aminet 34 / Aminet 34 (2000)(Schatztruhe)[!][Dec 1999].iso / Aminet / comm / misc / SnoopTAT.lha / SnoopTAT / rexx / CfgSnoopTAT.rexx next >
OS/2 REXX Batch file  |  1999-10-19  |  7KB  |  241 lines

  1. /*
  2.  
  3.     Script per generare il file di configurazione per
  4.     SnoopTAT 1.0.
  5.  
  6.     Richiede rexxreqtools.library e rexxsupport.library
  7.  
  8. */
  9.  
  10. IF ~Exists('libs:rexxsupport.library') THEN DO
  11.     SAY 'Questo script richiede la rexxsupport.library'
  12.     SAY 'Fai riferimento alla documentazione'
  13.     SAY 'per preparare il file di configurazione.'
  14.     EXIT
  15. END
  16.  
  17. IF ~Exists('libs:rexxreqtools.library') THEN DO
  18.     SAY 'Questo script richiede la rexxreqtools.library'
  19.     SAY 'Fai riferimento alla documentazione'
  20.     SAY 'per preparare il file di configurazione.'
  21.     EXIT
  22. END
  23.  
  24. IF ~Show('l','rexxsupport.library') THEN AddLib('rexxsupport.library',0,-30)
  25. IF ~Show('l','rexxreqtools.library') THEN AddLib('rexxreqtools.library',0,-30)
  26.  
  27. nl = '0a'x
  28. file = ''
  29. body = 'Programma per la configurazione di "SnoopTAT 1.0"'nl,
  30. 'di'nl'41 (Marco Casavecchia)'nl'email: marco41@libero.it'
  31. gadget = 'Continua|Fine'
  32. CALL MESSAGGIO
  33.  
  34. INIZIO:
  35.  
  36. form = 'Ordinaria'
  37.  
  38. body =  'Ora dovrai fornire alcuni dati necessari'nl,
  39.     'per il funzionamento di "SnoopTAT".'nl||nl,
  40.     'La prima scelta riguarda la directory di lavoro:'nl,
  41.     'consiglio di indicare una directory in Ram'nl,
  42.     'per ridurre gli accessi al disco.'
  43. gadget = 'Va bene|Fine'
  44. CALL MESSAGGIO
  45.  
  46. dir = 'Ram:t'
  47. CALL FILEREQ
  48. lav = scelta
  49.  
  50. body =  'Ora dovrai scegliere la directory di'nl,
  51.     'di destinazione per i files di stoccaggio'nl,
  52.     'temporaneo dei dati.Occorre NON INDICARE'nl,
  53.     'una directory in RAM in modo da evitarne la'nl,
  54.     'perdita in caso di eventuali crash durante il'nl,
  55.     'collegamento.'
  56. CALL MESSAGGIO
  57.  
  58. dir = 'Sys:t'
  59. CALL FILEREQ
  60. temp = scelta
  61.  
  62. body =  'Scegli ora la directory di destinazione'nl,
  63.     'per i file di log in cui saranno conservati'nl,
  64.     'i dati relativi ai collegamenti effettuati.'nl,
  65.     'Per ogni mese sarà creato un file dal nome'nl,
  66.     '"Spese_mm_aaaa.log"  (es: Sspese_10_1999.log).'
  67. CALL MESSAGGIO
  68.  
  69. dir = 'Sys:s'
  70. CALL FILEREQ
  71. log = scelta
  72.  
  73. body =  'Quale tariffa Telecom devo applicare?'
  74. gadget = 'Formula Urbana|Ordinaria'
  75. t = Rtezrequest(body,gadget,'CfgSnoopTAT','rtez_defaultresponse = 1 rtez_flags = ezreqf_centertext')
  76.  
  77. IF t = 1 THEN DO
  78.     body = 'Hai richiesto alla Telecom la "Formula Urbana"?'
  79.     gadget = 'Si|No'
  80.     t1 = Rtezrequest(body,gadget,'CfgSnoopTAT','rtez_defaultresponse = 1 rtez_flags = ezreqf_centertext')
  81.     IF t1 = 1 THEN form='Urbana'
  82. END
  83.  
  84. IF t = 0 THEN DO
  85.     body = 'Non hai richiesto la "Formula urbana".. Utilizzo la tariffa Ordinaria a tempo?'
  86.     gadget = 'Si|No'
  87.     t1 = Rtezrequest(body,gadget,'CfgSnoopTAT','rtez_defaultresponse = 1 rtez_flags = ezreqf_centertext')
  88.     IF t1 = 1 THEN form='Ordinaria'
  89. END
  90.  
  91.  
  92. body =  'Indica il costo in lire (senza IVA) di'nl,
  93.     'un minuto di conversazione (per i decimali usa il punto ".").'nl,
  94.     'I valori preimpostati sono quelli correntemente'nl,
  95.     'in vigore per la Tariffa urbana A Tempo (TAT).'
  96. gadget = 'Continua|Fine'
  97. CALL MESSAGGIO
  98.  
  99. body = 'Tariffa intera:'nl,
  100.     'Costo di un minuto di conversazione'nl,
  101.     'durante i primi 15 minuti di collegamento'
  102. str = '30'
  103. CALL STRINGA
  104. int1 = str
  105.  
  106. body =  'Tariffa intera:'nl,
  107.     'Costo di un minuto di conversazione'nl,
  108.     'dopo i primi 15 minuti di collegamento'
  109. str = '27.6'
  110. CALL STRINGA
  111. int2 = str
  112.  
  113. body =  'Tariffa ridotta:'nl,
  114.     'Costo di un minuto di conversazione'nl,
  115.     'durante i primi 15 minuti di collegamento'
  116. str = '17.7'
  117. CALL STRINGA
  118. not1 = str
  119.  
  120. body =  'Tariffa ridotta:'nl,
  121.     'Costo di un minuto di conversazione'nl,
  122.     'dopo i primi 15 minuti di collegamento'
  123. str = '15.9'
  124. CALL STRINGA
  125. not2 = str
  126.  
  127. COSTO:
  128. body =  'Costo dello scatto alla risposta (IVA esclusa):'nl,
  129.     '(Inserire un numero INTERO, senza decimali)'
  130. str = '100'
  131.  
  132. CALL STRINGA
  133. IF Datatype(str,'w') = 0 THEN CALL COSTO
  134. unit = str
  135.  
  136. body = 'Inserisci ora il tempo occorrente'nl,
  137.        'in secondi, perchè il modem stabilisca'nl,
  138.        'la connessione. E'' il tempo che'nl,
  139.        'i due modem impiegano per effettuare'nl,
  140.        'l'' handshaking...'nl,
  141.        'In altre parole, il tempo che passa'nl,
  142.        'tra la risposta del modem remoto e'nl,
  143.        'l''apparizione della finestra di SnoopTAT.'
  144. str = '30'
  145. CALL STRINGA
  146. con = str
  147.  
  148. body = 'Inserisci la tolleranza del resume'nl,
  149.        '(espressa in lire) quando SnoopTAT'nl,
  150.        'tenterà di valutare il costo di una'nl,
  151.        'connessione interrottasi per crash'nl,
  152.        'o per blackout.'nl,
  153.        'Per informazioni più dettagliate su'nl,
  154.        'questo parametro fare riferiento alla'nl,
  155.        'documentazione allegata.'
  156. str = '100'
  157. CALL STRINGA
  158. sc = str
  159.  
  160. body =  'Devo generare il log file'nl,
  161.     'per Phonebill?'
  162. gadget = 'Si|No'
  163. t = Rtezrequest(body,gadget,'CfgSnoopTAT','rtez_defaultresponse = 1 rtez_flags = ezreqf_centertext')
  164. IF t = 1 THEN pb = 'si'
  165.     ELSE pb = 'no'
  166.  
  167. body =  'Riepilogo dei dati inseriti:'nl||nl,
  168.     'Directory file temporaneo:      'temp||nl,
  169.     'Directory file log:             'log||nl,
  170.     'Directory di lavoro:            'lav||nl,
  171.     'Formula:                        'form||nl,
  172.     'Tariffa intera primi 15 min.:   'int1||nl,
  173.     'Tariffa intera dopo 15 min.:    'int2||nl,
  174.     'Tariffa ridotta primi 15 min.:  'not1||nl,
  175.     'Tariffa ridotta dopo 15 min.:   'not2||nl,
  176.     'Costo scatto alla risposta:     'unit||nl,
  177.     'Tolleranza in resume:           'unit||nl,
  178.     'Tempo per il Connect (secondi): 'con||nl,
  179.     'Phonebill:                      'pb
  180.  
  181. gadget = 'Salva|Salva Come|Errati|Fine'
  182. t = Rtezrequest(body,gadget,'CfgSnoopTAT','rtez_defaultresponse = 1' 'rt_font = topaz.font/8')
  183.  
  184. IF t = 0 THEN EXIT
  185. IF t = 3 THEN CALL INIZIO
  186. IF t = 2 THEN DO
  187.     dir = 'Envarc:';nome = 'SnoopTAT.cfg'
  188.     scelta = Rtfilerequest(dir,nome,'Scegli il File',,'rtfi_flags = freqf_save')
  189.     IF scelta = "" THEN EXIT
  190.     cfg = scelta
  191. END
  192.  
  193. IF t = 1 THEN cfg = 'Envarc:SnoopTAT.cfg'
  194.  
  195. IF ~Open('config',cfg,'w') THEN DO
  196.     SAY 'Errore: Non è possibile aprire in scrittura'
  197.     SAY 'il file di configurazione 'cfg' !!!'
  198.     EXIT
  199.     END
  200.  
  201.  
  202. WriteLn('config','CFG SNOOPTAT 1.0')
  203. WriteLn('config',temp)
  204. WriteLn('config',log)
  205. WriteLn('config',lav)
  206. WriteLn('config',int1)
  207. WriteLn('config',int2)
  208. WriteLn('config',not1)
  209. WriteLn('config',not2)
  210. WriteLn('config',form)
  211. WriteLn('config',sc)
  212. WriteLn('config',unit)
  213. WriteLn('config',con)
  214. WriteLn('config',pb)
  215. Close('config')
  216.  
  217. ADDRESS command
  218.  
  219. IF Left(cfg,7) = 'Envarc:' THEN DO
  220.     ADDRESS command
  221.     'copy >nil: 'cfg' env:'
  222. END
  223.  
  224. EXIT
  225.  
  226. MESSAGGIO:
  227. t = Rtezrequest(body,gadget,'CfgSnoopTAT','rtez_defaultresponse = 1 rtez_flags = ezreqf_centertext')
  228. IF t = 0 THEN EXIT
  229. RETURN
  230.  
  231. FILEREQ:
  232. scelta = Rtfilerequest(dir,,'Scegli la Directory',,'rtfi_flags = freqf_nofiles')
  233. IF scelta = "" THEN EXIT
  234. RETURN
  235.  
  236. STRINGA:
  237. str = rtgetstring(str,body,'CfgSnoopTAT',,'rtgs_flags = gsreqf_centertext')
  238. IF str = "" THEN EXIT
  239. RETURN
  240.  
  241.